Synchronized online content management systems allow users to easily store data online and share the data without having to worry about transporting storage media such as CD-ROMs, flash drives, or memory cards between two different computing devices. One of the promises of cloud computing is that once you store your data in the “cloud,” you can access the data with any device you want from anywhere you want. People frequently use these cloud-based online content management systems to access data from their personal computers, mobile phones, and tablet devices. However, being able to access all of your data from every device you may come across may not be ideal in certain situations. Some computing devices might be inherently insecure in their design. Other devices are shared by strangers who cannot always be trusted. Still other devices might have been already compromised by malware or a computer virus. Thus, a user might not want to expose all of her data, which may include personal, sensitive, or confidential information, to those devices that she cannot completely trust.
For example, a library customer who uses a publicly shared computer terminal, a lecturer who needs to deliver a presentation on an unfamiliar laptop computer at an academic conference, and a subway commuter who forgot to bring his own smart phone and now has to borrow a stranger's phone to access an important business document, all have one thing in common: they may all feel uncomfortable about potentially exposing sensitive information to an unfamiliar and untrustworthy computing environment. In each of these situations, the user cannot be entirely sure that the device that he or she is using for the first time is securely designed, is not shared by exploitative users, and has not fallen prey to malicious software.
The current solution for situations like these is simply to be wary of these pitfalls and not access sensitive or confidential data when the device cannot be reasonably trusted. This is because most content management systems do not allow access management on a per-device basis. In other words, it is often impractical or impossible to control access with a fine-grain precision when it comes to assigning different access privileges to different devices. Therefore, the need for a more versatile, robust, and convenient method of authorizing untrusted computing devices is paramount.
In addition, for non-traditional computing devices, such as smart televisions and smart appliances, which offer only a very limited user interface, it can often be very cumbersome and unwieldy to pair those devices to a content management system. For example, armed only with a remote control and lacking a full-size keyboard, televisions are notoriously challenging to interact with, especially when the users need to input complex information such as a username and password. Sharing data with such limited-purpose devices can be difficult.